Reactì ëì ë ëë§ì ëí ì¬ìžµ ë¶ì, Fiber ìí€í ì² ë° ìì 룚í륌 í구íì¬ êžë¡ë² ì í늬ìŒìŽì ì ì±ë¥ê³Œ ì¬ì©ì 겜íì ìµì íí©ëë€.
React ëì ë ëë§: Fiber ìí€í ì² ë° ìì 룚í ë¶ìì íµí ì±ë¥ í¥ì
íë¡ ížìë ê°ë°ìì ì§ë°°ì ìž ìžë ¥ìž Reactë ì ì ë ë³µì¡íê³ ìíž ìì©ì ìž ì¬ì©ì ìží°íìŽì€ì ì구륌 충족íêž° ìíŽ ì§ìì ìŒë¡ ì§ííŽ ììµëë€. ìŽë¬í ì§íìì ê°ì¥ ì€ìí ë°ì ì€ íëë React 16ìì ëì ë ëì ë ëë§ì ëë€. ìŽ íšë¬ë€ì ì íì Reactê° ì ë°ìŽížë¥Œ êŽëЬíê³ ì»Ží¬ëížë¥Œ ë ëë§íë ë°©ìì 귌볞ì ìŒë¡ ë³ê²œíì¬ ìë¹í ì±ë¥ í¥ìì ì€ííê³ ë ë°ìì±ìŽ ë°ìŽë ì¬ì©ì 겜íì ê°ë¥íê² íìµëë€. ìŽ êž°ì¬ììë ëì ë ëë§ì íµì¬ ê°ë ì ììží ìŽíŽë³Žê³ Fiber ìí€í ì²ì ìì 룚í륌 í구íë©° ìŽë¬í ë©ì»€ëìŠìŽ ëì± ìííê³ íšìšì ìž React ì í늬ìŒìŽì ì ìŽë»ê² êž°ì¬íëì§ì ëí íµì°°ë ¥ì ì ê³µí©ëë€.
ëì ë ëë§ì íìì± ìŽíŽ
ëì ë ëë§ ìŽì ìë Reactê° ëêž° ë°©ììŒë¡ ìëíìµëë€. ì ë°ìŽíž(ì: ìí ë³ê²œ, prop ì ë°ìŽíž)ê° ë°ìí멎 Reactë ì 첎 컎í¬ëíž ížëŠ¬ë¥Œ ëšìŒ ì€ëš ìë ìì ìŒë¡ ë ëë§ì ììí©ëë€. ìŽë¬í ëêž° ë ëë§ì í¹í ëê·ëªš 컎í¬ëíž ížëЬ ëë ê³ì° ë¹ì©ìŽ ë§ìŽ ëë ìì ì ì²ëЬí ë ì±ë¥ ë³ëª© íìì ìŽëí ì ììµëë€. ìŽë¬í ë ëë§ êž°ê° ëì ëžëŒì°ì ë ìëµíì§ ìì ìë§ìŽê³ ì€ë§ì€ë¬ìŽ ì¬ì©ì 겜íì ìŽëí©ëë€. ìŽë ì¢ ì¢ "ë©ìž ì€ë ë ì°šëš"ìŽëŒê³ í©ëë€.
ì¬ì©ìê° í ì€íž íëì ì ë ¥íë ìë늬ì€ë¥Œ ììíŽ ë³Žìžì. ì ë ¥ë í ì€ížë¥Œ íìíë 컎í¬ëížê° í¬ê³ ë³µì¡í 컎í¬ëíž ížëЬì ìŒë¶ìž ê²œì° ê° í€ ì ë ¥ ì ë©ìž ì€ë ë륌 ì°šëšíë ë€ì ë ëë§ìŽ ížëŠ¬ê±°ë ì ììµëë€. ìŽë¡ ìžíŽ ëì ëë ì§ì°ê³Œ ì¢ì§ ìì ì¬ì©ì 겜íìŽ ë°ìí©ëë€.
ëì ë ëë§ì Reactê° ë ëë§ ìì ì ë ìê³ êŽëЬ ê°ë¥í ìì ëšìë¡ ë¶í íì¬ ìŽ ë¬žì 륌 íŽê²°í©ëë€. ìŽë¬í ëšìë íìì ë°ëŒ ì°ì ììê° ì§ì ëê³ ìŒì ì€ì§ëê³ ë€ì ììë ì ììŒë¯ë¡ Reactê° ì¬ì©ì ì ë ¥ ëë ë€ížìí¬ ìì²ê³Œ ê°ì ë€ë¥ž ëžëŒì°ì ìì 곌 ë ëë§ ìì ì ìží°ëЬë¹í ì ììµëë€. ìŽ ì ê·Œ ë°©ìì ë©ìž ì€ë ëê° ì¥êž°ê° ì°šëšëë ê²ì ë°©ì§íì¬ ëì± ë°ìì±ìŽ ë°ìŽëê³ ì ëì ìž ì¬ì©ì 겜íì ì ê³µí©ëë€. Reactì ë ëë§ íë¡ìžì€ì ëí ë©í°íì€í¹ìŽëŒê³ ìê°íììì€.
Fiber ìí€í ì² ìê°
ëì ë ëë§ì íµì¬ìë Fiber ìí€í ì²ê° ììµëë€. Fiberë Reactì ëŽë¶ ì¡°ì ìê³ ëŠ¬ìŠì ìì í ì¬êµ¬íí ê²ì ëë€. ìŽì ì ëêž° ì¡°ì íë¡ìžì€ì ë¬ëЬ Fiberë ì ë°ìŽíž ë° ë ëë§ ì»Ží¬ëíž êŽëЬì ë³Žë€ ì êµíê³ ìžë¶íë ì ê·Œ ë°©ìì ëì í©ëë€.
Fiberë 묎ììžê°ì?
Fiberë ê°ë ì ìŒë¡ 컎í¬ëíž ìžì€íŽì€ì ê°ì ííìŒë¡ ìŽíŽí ì ììµëë€. React ì í늬ìŒìŽì ì ê° ì»Ží¬ëížë íŽë¹ Fiber ë žëì ì°ê²°ë©ëë€. ìŽë¬í Fiber ë žëë 컎í¬ëíž ížëŠ¬ë¥Œ 믞ë¬ë§íë ížëЬ 구조륌 íì±í©ëë€. ê° Fiber ë žëë 컎í¬ëíž, props, ìì ë° íì¬ ìíì ëí ì 볎륌 ì ì§í©ëë€. ê²°ì ì ìŒë¡ íŽë¹ 컎í¬ëížì ëíŽ ìííŽìŒ íë ìì ì ëí ì 볎ë ì ì§í©ëë€.
Fiber ë žëì 죌ì ìì±ì ë€ì곌 ê°ìµëë€.
- type: 컎í¬ëíž ì í(ì:
div,MyComponent). - key: 컎í¬ëížì í ë¹ë ê³ ì í€(íšìšì ìž ì¡°ì ì ìíŽ ì¬ì©ëš).
- props: 컎í¬ëížì ì ë¬ë props.
- child: 컎í¬ëížì 첫 ë²ì§ž ììì ëíëŽë Fiber ë žëì ëí í¬ìží°.
- sibling: 컎í¬ëížì ë€ì íì 륌 ëíëŽë Fiber ë žëì ëí í¬ìží°.
- return: 컎í¬ëížì ë¶ëªšë¥Œ ëíëŽë Fiber ë žëì ëí í¬ìží°.
- stateNode: ì€ì 컎í¬ëíž ìžì€íŽì€ì ëí ì°žì¡°(ì: ížì€íž 컎í¬ëížì DOM ë žë, íŽëì€ ì»Ží¬ëíž ìžì€íŽì€).
- alternate: 컎í¬ëížì ìŽì ë²ì ì ëíëŽë Fiber ë žëì ëí í¬ìží°.
- effectTag: 컎í¬ëížì íìí ì ë°ìŽíž ì íì ëíëŽë íëê·ž(ì: ë°°ì¹, ì ë°ìŽíž, ìì ).
Fiber ížëЬ
Fiber ížëЬë ì í늬ìŒìŽì UIì íì¬ ìí륌 ëíëŽë ì구ì ìž ë°ìŽí° 구조ì ëë€. ì ë°ìŽížê° ë°ìí멎 Reactë ì ë°ìŽíž í UIì ìíë ìí륌 ëíëŽë ìë¡ìŽ Fiber ížëŠ¬ë¥Œ 백귞ëŒìŽëìì ìì±í©ëë€. ìŽ ìë¡ìŽ ížëŠ¬ë¥Œ "ìì ì€" ížëЬëŒê³ í©ëë€. ìì ì€ ížëŠ¬ê° ìë£ë멎 Reactë íì¬ ížëЬì êµííì¬ ì¬ì©ììê² ë³ê²œ ì¬íì íìí©ëë€.
ìŽì€ ížëЬ ë°©ìì íµíŽ Reactë ì°šëšëì§ ìë ë°©ììŒë¡ ë ëë§ ì ë°ìŽížë¥Œ ìíí ì ììµëë€. ìì ì€ ížëŠ¬ê° ë°±ê·žëŒìŽëìì 구ì±ëë ëì íì¬ ížëŠ¬ê° ì¬ì©ììê² ê³ì íìë©ëë€. ìŽë ê² í멎 ì ë°ìŽíž ì€ì UIê° ì ì§ëê±°ë ìëµíì§ ìë ê²ì ë°©ì§í ì ììµëë€.
Fiber ìí€í ì²ì ì¥ì
- ì€ëš ê°ë¥í ë ëë§: Fiber륌 ì¬ì©í멎 Reactê° ë ëë§ ìì ì ìŒì ì€ì§íê³ ë€ì ììí ì ììŒë¯ë¡ ì¬ì©ì ìíž ìì©ì ì°ì ìì륌 ì§ì íê³ ë©ìž ì€ë ëê° ì°šëšëë ê²ì ë°©ì§í ì ììµëë€.
- ìŠë¶ ë ëë§: Fiber륌 ì¬ì©í멎 Reactê° ë ëë§ ì ë°ìŽížë¥Œ ë ìì ìì ëšìë¡ ë¶í í ì ììŒë©°, ìê°ìŽ ì§ëšì ë°ëŒ ìŠë¶ ë°©ììŒë¡ ì²ëЬí ì ììµëë€.
- ì°ì ìì ì§ì : Fiber륌 ì¬ì©í멎 Reactê° ë€ìí ì íì ì ë°ìŽížì ì°ì ìì륌 ì§ì íì¬ ì€ìí ì ë°ìŽíž(ì: ì¬ì©ì ì ë ¥)ê° ë ì€ìí ì ë°ìŽíž(ì: 백귞ëŒìŽë ë°ìŽí° íì¹)ë³Žë€ ëšŒì ì²ëЬëëë¡ í ì ììµëë€.
- í¥ìë ì€ë¥ ì²ëЬ: Fiber륌 ì¬ì©í멎 ë ëë§ ì€ì ì€ë¥ë¥Œ ë ìœê² ì²ëЬí ì ììµëë€. ì€ë¥ê° ë°ìí ê²œì° Reactê° ìŽì ì ìì ì ìž ìíë¡ ë¡€ë°±í ì ìêž° ë묞ì ëë€.
ìì 룚í: Fiberê° ëìì±ì ê°ë¥íê² íë ë°©ë²
ìì 룚íë ëì ë ëë§ì 구ëíë ìì§ì ëë€. Fiber ížëŠ¬ë¥Œ íìíê³ ê° Fiber ë žëìì ìì ì ìííê³ UI륌 ìŠë¶ ë°©ììŒë¡ ì ë°ìŽížíë ì¬ê· íšìì ëë€. ìì 룚íë ë€ì ìì ì ëŽë¹í©ëë€.
- ì²ëЬí ë€ì Fiber ì í.
- Fiberìì ìì ìí(ì: ì ìí ê³ì°, props ë¹êµ, 컎í¬ëíž ë ëë§).
- ìì ê²°ê³Œë¡ Fiber ížëЬ ì ë°ìŽíž.
- ë ë§ì ìì ììœ.
ìì 룚íì ëšê³
ìì 룚íë ë ê°ì§ 죌ì ëšê³ë¡ 구ì±ë©ëë€.
- ë ëë§ ëšê³(ì¡°ì ëšê³ëŒê³ ë íš): ìŽ ëšê³ë ìì ì€ Fiber ížëŠ¬ë¥Œ ë¹ëíë ìí ì í©ëë€. ìŽ ëšê³ìì Reactë Fiber ížëŠ¬ë¥Œ íìíê³ íì¬ ížëЬì ìíë ìí륌 ë¹êµíì¬ ìííŽìŒ íë ë³ê²œ ì¬íì ê²°ì í©ëë€. ìŽ ëšê³ë ë¹ëêž°ì ìŽë©° ì€ëš ê°ë¥í©ëë€. DOMìì *ë³ê²œíŽìŒ í * ì¬íì ê²°ì í©ëë€.
- ì»€ë° ëšê³: ìŽ ëšê³ë ì€ì DOMì ë³ê²œ ì¬íì ì ì©íë ìí ì í©ëë€. ìŽ ëšê³ìì Reactë DOM ë žë륌 ì ë°ìŽížíê³ , ì ë žë륌 ì¶ê°íê³ , ìŽì ë žë륌 ì ê±°í©ëë€. ìŽ ëšê³ë ëêž°ì ìŽë©° ì€ëší ì ììµëë€. ì€ì ë¡ DOMì *ë³ê²œí©ëë€*.
ìì 룚íê° ëìì±ì ê°ë¥íê² íë ë°©ë²
ëì ë ëë§ì íµì¬ì ë ëë§ ëšê³ê° ë¹ëêž°ì ìŽê³ ì€ëš ê°ë¥íë€ë ì¬ì€ì ììµëë€. ìŠ, Reactë ìžì ë ì§ ë ëë§ ëšê³ë¥Œ ìŒì ì€ì§íì¬ ëžëŒì°ì ê° ì¬ì©ì ì ë ¥ ëë ë€ížìí¬ ìì²ê³Œ ê°ì ë€ë¥ž ìì ì ì²ëЬíëë¡ í ì ììµëë€. ëžëŒì°ì ê° ì íŽ ìíê° ë멎 Reactë ì€ëšë ë¶ë¶ë¶í° ë ëë§ ëšê³ë¥Œ ë€ì ììí ì ììµëë€.
ìŽ ë ëë§ ëšê³ë¥Œ ìŒì ì€ì§íê³ ë€ì ììíë êž°ë¥ì íµíŽ Reactë ë ëë§ ìì ì ë€ë¥ž ëžëŒì°ì ìì 곌 ìží°ëЬë¹í ì ììŽ ë©ìž ì€ë ëê° ì°šëšëì§ ìê³ ëì± ë°ìì±ìŽ ë°ìŽë ì¬ì©ì 겜íì 볎ì¥í©ëë€. ë°ë©Žì ì»€ë° ëšê³ë UIì ìŒêŽì±ì 볎ì¥íêž° ìíŽ ëêž°ì ìŽìŽìŒ í©ëë€. ê·žë¬ë ì»€ë° ëšê³ë ìŒë°ì ìŒë¡ ë ëë§ ëšê³ë³Žë€ íšì¬ ë¹ ë¥Žë¯ë¡ ìŒë°ì ìŒë¡ ì±ë¥ ë³ëª© íììŽ ë°ìíì§ ììµëë€.
ìì 룚íìì ì°ì ìì ì§ì
Reactë ì°ì ìì êž°ë° ì€ìŒì€ë§ ìê³ ëŠ¬ìŠì ì¬ì©íì¬ ëšŒì ì²ëЬí Fiber ë žë륌 ê²°ì í©ëë€. ìŽ ìê³ ëŠ¬ìŠì ì€ìëì ë°ëŒ ê° ì ë°ìŽížì ì°ì ìì ìì€ì í ë¹í©ëë€. ì륌 ë€ìŽ ì¬ì©ì ì ë ¥ì ìíŽ ížëŠ¬ê±°ë ì ë°ìŽížë ìŒë°ì ìŒë¡ 백귞ëŒìŽë ë°ìŽí° íì¹ì ìíŽ ížëŠ¬ê±°ë ì ë°ìŽížë³Žë€ ëì ì°ì ììê° í ë¹ë©ëë€.
ìì 룚íë íì ê°ì¥ ëì ì°ì ììì Fiber ë žë륌 뚌ì ì²ëЬí©ëë€. ìŽë ê² í멎 ì€ìí ì ë°ìŽížê° ì ìíê² ì²ëЬëìŽ ë°ìì±ìŽ ë°ìŽë ì¬ì©ì 겜íì ì ê³µí©ëë€. ë ì€ìí ì ë°ìŽížë ëžëŒì°ì ê° ì íŽ ìíìŒ ë 백귞ëŒìŽëìì ì²ëЬë©ëë€.
ìŽ ì°ì ìì ì§ì ìì€í ì í¹í ìë§ì ëì ì ë°ìŽížê° ìë ë³µì¡í ì í늬ìŒìŽì ìì ìíí ì¬ì©ì 겜íì ì ì§íë ë° ë§€ì° ì€ìí©ëë€. ì¬ì©ìê° ê²ì ì°œì ì ë ¥íë ëì ì í늬ìŒìŽì ìŽ ì ìë ê²ììŽ ëª©ë¡ì íì¹íì¬ íìíë ìë늬ì€ë¥Œ ìê°íŽ ë³Žììì€. í ì€íž íëê° ë°ìì±ì ì ì§íëë¡ ì¬ì©ì ì ë ¥ì ì²ëЬíë ì ë°ìŽížì ì°ì ììê° ì§ì ëìŽìŒ íë ë°ë©Ž, ì ìë ê²ììŽì êŽë šë ì ë°ìŽížë 백귞ëŒìŽëìì ì²ëЬí ì ììµëë€.
ëì ë ëë§ì ì€ì ì¬ë¡
ëì ë ëë§ìŽ React ì í늬ìŒìŽì ì ì±ë¥ê³Œ ì¬ì©ì 겜íì ìŽë»ê² í¥ììí¬ ì ìëì§ ëª ê°ì§ ì€ì ì륌 ìŽíŽë³Žê² ìµëë€.
1. ì¬ì©ì ì ë ¥ ëë°ìŽì±
ì¬ì©ìê° ì ë ¥í ë ê²ì 결곌륌 íìíë ê²ì ì°œì ìê°íŽ ë³Žìžì. ëì ë ëë§ìŽ ììŒë©Ž ê° í€ ì ë ¥ ì ì 첎 ê²ì 결곌 목ë¡ìŽ ë€ì ë ëë§ëìŽ ì±ë¥ 묞ì ì ìë§ìž ì¬ì©ì 겜íì ìŽëí ì ììµëë€.
ëì ë ëë§ì ì¬ì©í멎 ì¬ì©ìê° ì§§ì ìê° ëì ì ë ¥ì ì€ì§í ëê¹ì§ ê²ì 결곌 ë ëë§ì ì§ì°ìí€êž° ìíŽ ëë°ìŽì±ì ì¬ì©í ì ììµëë€. ìŽë ê² í멎 Reactê° ì¬ì©ì ì ë ¥ì ì°ì ìì륌 ì§ì íê³ UIê° ìëµíì§ ìê² ëë ê²ì ë°©ì§í ì ììµëë€.
ë€ìì ëšìíë ìì ëë€.
import React, { useState, useCallback } from 'react';
function SearchBar() {
const [searchTerm, setSearchTerm] = useState('');
const debouncedSearch = useCallback(
debounce((value) => {
// Perform search logic here
console.log('Searching for:', value);
}, 300),
[]
);
const handleChange = (event) => {
const value = event.target.value;
setSearchTerm(value);
debouncedSearch(value);
};
return (
);
}
// Debounce function
function debounce(func, delay) {
let timeout;
return function(...args) {
const context = this;
clearTimeout(timeout);
timeout = setTimeout(() => func.apply(context, args), delay);
};
}
export default SearchBar;
ìŽ ììì debounce íšìë ì¬ì©ìê° 300ë°ëŠ¬ìŽ ëì ì
ë ¥ì ì€ì§í ëê¹ì§ ê²ì ë
ŒëЬ ì€íì ì§ì°ìíµëë€. ìŽë ê² í멎 íìí 겜ì°ìë§ ê²ì ê²°ê³Œê° ë ëë§ëìŽ ì í늬ìŒìŽì
ì±ë¥ìŽ í¥ìë©ëë€.
2. ìŽë¯žì§ ì§ì° ë¡ë©
í° ìŽë¯žì§ë¥Œ ë¡ëí멎 ì¹ íìŽì§ì ìŽêž° ë¡ë ìê°ì ìë¹í ìí¥ì ë¯žì¹ ì ììµëë€. ëì ë ëë§ì ì¬ì©í멎 ë·°í¬ížì íìë ëê¹ì§ ìŽë¯žì§ ë¡ë륌 ì°êž°íêž° ìíŽ ì§ì° ë¡ë©ì ì¬ì©í ì ììµëë€.
ìŽ êž°ì ì ì¬ì©ìê° íìŽì§ì ìíž ìì©ì ììíêž° ì ì 몚ë ìŽë¯žì§ê° ë¡ëë ëê¹ì§ êž°ë€ëŠŽ íìê° ììŒë¯ë¡ ì í늬ìŒìŽì ì ì²Žê° ì±ë¥ì í¬ê² í¥ììí¬ ì ììµëë€.
ë€ìì react-lazyload ëŒìŽëžë¬ëŠ¬ë¥Œ ì¬ì©íë ëšìíë ìì
ëë€.
import React from 'react';
import LazyLoad from 'react-lazyload';
function ImageComponent({ src, alt }) {
return (
Loading...}>
);
}
export default ImageComponent;
ìŽ ììì LazyLoad 컎í¬ëížë ìŽë¯žì§ê° ë·°í¬ížì íìë ëê¹ì§ ìŽë¯žì§ ë¡ë륌 ì§ì°ìíµëë€. placeholder propì ì¬ì©í멎 ìŽë¯žì§ê° ë¡ëëë ëì ë¡ë© íìꞰ륌 íìí ì ììµëë€.
3. ë°ìŽí° íì¹ë¥Œ ìí Suspense
React Suspense륌 ì¬ì©í멎 ë°ìŽí°ë¥Œ ë¡ëíë ëì 컎í¬ëíž ë ëë§ì "ìŒì ì€ëš"í ì ììµëë€. ìŽë APIìì ë°ìŽí°ë¥Œ êž°ë€ëЬë ëì ë¡ë© íìꞰ륌 íìíë €ë ë°ìŽí° íì¹ ìë늬ì€ì í¹í ì ì©í©ëë€.
Suspenseë ëì ë ëë§ê³Œ ìííê² íµí©ëìŽ Reactê° ë°ìŽí° ë¡ë©ì ì°ì ìì륌 ì§ì íê³ UIê° ìëµíì§ ìê² ëë ê²ì ë°©ì§í ì ììµëë€.
ë€ìì ëšìíë ìì ëë€.
import React, { Suspense } from 'react';
// A fake data fetching function that returns a Promise
const fetchData = () => {
return new Promise(resolve => {
setTimeout(() => {
resolve({ data: 'Data loaded!' });
}, 2000);
});
};
// A React component that uses Suspense
function MyComponent() {
const resource = fetchData();
return (
Loading... ìŽ ììì MyComponentë Suspense 컎í¬ëížë¥Œ ì¬ì©íì¬ ë°ìŽí°ê° íì¹ëë ëì ë¡ë© íìꞰ륌 íìí©ëë€. DataDisplay 컎í¬ëížë resource ê°ì²Žìì ë°ìŽí°ë¥Œ ì¬ì©í©ëë€. ë°ìŽí°ê° ì¬ì© ê°ë¥í멎 Suspense 컎í¬ëížë ë¡ë© íìꞰ륌 ìëìŒë¡ DataDisplay 컎í¬ëížë¡ ë°ê¿ëë€.
êžë¡ë² ì í늬ìŒìŽì ì ìŽì
React ëì ë ëë§ì ìŽì ì 몚ë ì í늬ìŒìŽì ìŒë¡ íì¥ëì§ë§ êžë¡ë² ëìì íê²í íë ì í늬ìŒìŽì ì í¹í í° ìí¥ì 믞칩ëë€. ê·ž ìŽì ë ë€ì곌 ê°ìµëë€.
- ë€ìí ë€ížìí¬ ì¡°ê±Ž: ì ìžê³ì ì¬ì©ìë ë§€ì° ë€ë¥ž ë€ížìí¬ ìëì ìì ì±ì 겜íí©ëë€. ëì ë ëë§ì ì¬ì©í멎 ì í늬ìŒìŽì ìŽ ì€ìí ì ë°ìŽížì ì°ì ìì륌 ì§ì íê³ UIê° ìëµíì§ ìê² ëë ê²ì ë°©ì§íì¬ ë늬거ë ìì ì ìŽì§ ìì ë€ížìí¬ ì°ê²°ì ìííê² ì²ëЬí ì ììµëë€. ì륌 ë€ìŽ ëìíìŽ ì íë ì§ìì ì¬ì©ìë ë ì€ìí ë°ìŽí°ê° 백귞ëŒìŽëìì ë¡ëëë ëììë ì í늬ìŒìŽì ì íµì¬ êž°ë¥ê³Œ ìíž ìì©í ì ììµëë€.
- ë€ìí ì¥ì¹ êž°ë¥: ì¬ì©ìë ê³ êž ë°ì€í¬í±ìì ì ì ë ¥ íŽëí°ê¹ì§ ë€ìí ì¥ì¹ìì ì¹ ì í늬ìŒìŽì ì ì¡ìžì€í©ëë€. ëì ë ëë§ì ë ëë§ ì±ë¥ì ìµì ííê³ ë©ìž ì€ë ëì ë¶í륌 ì€ììŒë¡ìš ì í늬ìŒìŽì ìŽ ëªšë ì¥ì¹ìì ì ìëíëë¡ íë ë° ëììŽ ë©ëë€. ìŽë 구í ë° ì ì ë ¥ ì¥ì¹ê° ë ë늬 ì¬ì©ëë ê°ë° ëìêµìì í¹í ì€ìí©ëë€.
- êµì í ë° íì§í: ì¬ë¬ ìžìŽì ë¡ìŒìŒì ì§ìíë ì í늬ìŒìŽì ì ì¢ ì¢ ë ë³µì¡í 컎í¬ëíž ížëЬì ë ëë§í ë°ìŽí°ê° ë ë§ìµëë€. ëì ë ëë§ì ì¬ì©í멎 ë ëë§ ìì ì ë ìì ìì ëšìë¡ ë¶í íê³ ì€ìëì ë°ëŒ ì ë°ìŽížì ì°ì ìì륌 ì§ì íì¬ ìŽë¬í ì í늬ìŒìŽì ì ì±ë¥ì í¥ììí€ë ë° ëììŽ ë ì ììµëë€. íì¬ ì íë ë¡ìŒìŒê³Œ êŽë šë 컎í¬ëížë¥Œ ì°ì ìíì¬ ì¬ì©ìì ìì¹ì êŽê³ììŽ ë ëì ì¬ì©ì 겜íì 볎ì¥í ì ììµëë€.
- í¥ìë ì ê·Œì±: ë°ìì±ìŽ ë°ìŽëê³ ì±ë¥ìŽ ë°ìŽë ì í늬ìŒìŽì ì ì¥ì ê° ìë ì¬ì©ììê² ë ìœê² ì ê·Œí ì ììµëë€. ëì ë ëë§ì UIê° ìëµíì§ ìê² ëë ê²ì ë°©ì§íê³ ë³Žì¡° êž°ì ìŽ ì í늬ìŒìŽì 곌 ì ëë¡ ìíž ìì©í ì ìëë¡ íì¬ ì í늬ìŒìŽì ì ì ê·Œì±ì í¥ììí€ë ë° ëììŽ ë ì ììµëë€. ì륌 ë€ìŽ í멎 íë êž°ë ìííê² ë ëë§ëë ì í늬ìŒìŽì ì ëŽì©ì ë ìœê² íìíê³ íŽìí ì ììµëë€.
ì€í ê°ë¥í íµì°°ë ¥ ë° ëªšë² ì¬ë¡
React ëì ë ëë§ì íšê³Œì ìŒë¡ íì©íë €ë©Ž ë€ì ëªšë² ì¬ë¡ë¥Œ ê³ ë €íììì€.
- ì í늬ìŒìŽì íë¡íìŒë§: Reactì Profiler ë구륌 ì¬ì©íì¬ ì±ë¥ ë³ëª© íì곌 ëì ë ëë§ìŽ ê°ì¥ ë§ì ìŽì ì ì ê³µí ì ìë ììì ìë³í©ëë€. Profilerë 컎í¬ëížì ë ëë§ ì±ë¥ì ëí ê·ì€í íµì°°ë ¥ì ì ê³µíì¬ ê°ì¥ ë¹ì©ìŽ ë§ìŽ ëë ìì ì ì°ŸìëŽê³ ì ì íê² ìµì íí ì ììµëë€.
React.lazyë°Suspenseì¬ì©: ìŽë¬í êž°ë¥ì ëì ë ëë§ê³Œ ìííê² ìëíëë¡ ì€ê³ëììŒë©° ì í늬ìŒìŽì ì ì²Žê° ì±ë¥ì í¬ê² í¥ììí¬ ì ììµëë€. ìŽë¥Œ ì¬ì©íì¬ ì»Ží¬ëížë¥Œ ì§ì° ë¡ëíê³ ë°ìŽí°ê° ë¡ëëë ëì ë¡ë© íìꞰ륌 íìí©ëë€.- ì¬ì©ì ì ë ¥ ëë°ìŽì± ë° ì€ë¡íë§: ì¬ì©ì ì ë ¥ ìŽë²€ížë¥Œ ëë°ìŽì± ëë ì€ë¡íë§íì¬ ë¶íìí ë€ì ë ëë§ì ë°©ì§í©ëë€. ìŽë ê² í멎 UIê° ìëµíì§ ìê² ëë ê²ì ë°©ì§íê³ ì ë°ì ìž ì¬ì©ì 겜íì ê°ì í ì ììµëë€.
- 컎í¬ëíž ë ëë§ ìµì í: 컎í¬ëížê° íìí 겜ì°ìë§ ë€ì ë ëë§ëëì§ íìží©ëë€.
React.memoëëuseMemo륌 ì¬ì©íì¬ ì»Ží¬ëíž ë ëë§ì ë©ëªšìŽì ìŽì íê³ ë¶íìí ì ë°ìŽížë¥Œ ë°©ì§í©ëë€. - ì€ë ì€íëë ëêž°ì ìì ë°©ì§: ì€ë ì€íëë ëêž°ì ìì ì 백귞ëŒìŽë ì€ë ë ëë ì¹ ìì»€ë¡ ìŽëíì¬ ë©ìž ì€ë ë륌 ì°šëšíë ê²ì ë°©ì§í©ëë€.
- ë¹ëêž° ë°ìŽí° íì¹ ìì©: ë¹ëêž° ë°ìŽí° íì¹ êž°ì ì ì¬ì©íì¬ ë°ìŽí°ë¥Œ 백귞ëŒìŽëìì ë¡ëíê³ UIê° ìëµíì§ ìê² ëë ê²ì ë°©ì§í©ëë€.
- ë€ìí ì¥ì¹ ë° ë€ížìí¬ ì¡°ê±Žìì í ì€íž: ë€ìí ì¥ì¹ ë° ë€ížìí¬ ì¡°ê±Žìì ì í늬ìŒìŽì ì ì² ì í í ì€ížíì¬ ëªšë ì¬ì©ìì ëíŽ ì ìëíëì§ íìží©ëë€. ëžëŒì°ì ê°ë°ì ë구륌 ì¬ì©íì¬ ë€ìí ë€ížìí¬ ìë ë° ì¥ì¹ êž°ë¥ì ì뮬ë ìŽì í©ëë€.
- ìœë ë¶í ì ìíŽ Suspense륌 íµí©í ë í¹í TanStack Routerì ê°ì ëŒìŽëžë¬ëŠ¬ë¥Œ ì¬ì©íì¬ ëŒì°íž ì íì íšìšì ìŒë¡ êŽëЬíë ê²ì ê³ ë €íììì€.
ê²°ë¡
Fiber ìí€í ì²ì ìì 룚í륌 êž°ë°ìŒë¡ íë React ëì ë ëë§ì íë¡ ížìë ê°ë°ì ì€ìí ëìœì ëíë ëë€. ì€ëš ê°ë¥íê³ ìŠë¶ì ìž ë ëë§, ì°ì ìì ì§ì ë° í¥ìë ì€ë¥ ì²ëŠ¬ë¥Œ íµíŽ ëì ë ëë§ì ìë¹í ì±ë¥ í¥ìì ì€ííê³ êžë¡ë² ì í늬ìŒìŽì ì ëíŽ ëì± ë°ìì±ìŽ ë°ìŽë ì¬ì©ì 겜íì ì ê³µí©ëë€. ìŽ êž°ì¬ì ììœë ëì ë ëë§ì íµì¬ ê°ë ì ìŽíŽíê³ ëªšë² ì¬ë¡ë¥Œ ë°ë¥Žë©Ž ì ìžê³ ì¬ì©ììê² êž°ìšì ì ì¬íë ê³ ì±ë¥ì ì¬ì©ì ì¹íì ìž React ì í늬ìŒìŽì ì 구ì¶í ì ììµëë€. Reactê° ê³ì ë°ì íšì ë°ëŒ ëì ë ëë§ì ì¹ ê°ë°ì 믞ë륌 íì±íë ë° ì ì ë ì€ìí ìí ì í ê²ì ëë€.